import java.util.Scanner;

/**
 * @author vivi
 * @description
 * @date 2024/4/26
 */
public class demo1 {
    public static void main (String[] args) {
        Scanner scanner = new Scanner(System.in);
        long n = scanner.nextInt(); // 苹果个数
        long m = scanner.nextInt(); // 桃子个数
        long a = scanner.nextInt(); // 1号价值
        long b = scanner.nextInt(); // 2号价值

        long ret = 0;
        // 若全为1号 则x最小是 n/2 或者 m
        for(long x = 0; x <= Math.min(n / 2, m); x++) // 枚举 1 号礼包的个数 ?
        {
            // 2号个数为 n-2x || (m-x)/2
            long y = Math.min(n - x * 2, (m - x) / 2); // 计算 2 号礼包的个数 ?
            ret = Math.max(ret, a * x + b * y);
        }
        System.out.println(ret);
    }
}
